home *** CD-ROM | disk | FTP | other *** search
- \entry {introduction}{1}{introduction}
- \entry {context-free grammar}{9}{context-free grammar}
- \entry {grammar, context-free}{9}{grammar, context-free}
- \entry {BNF}{9}{BNF}
- \entry {Backus-Naur form}{9}{Backus-Naur form}
- \entry {symbols (abstract)}{9}{symbols (abstract)}
- \entry {token}{9}{token}
- \entry {syntactic grouping}{9}{syntactic grouping}
- \entry {grouping, syntactic}{9}{grouping, syntactic}
- \entry {start symbol}{10}{start symbol}
- \entry {Bison grammar}{10}{Bison grammar}
- \entry {formal grammar}{10}{formal grammar}
- \entry {semantic value}{11}{semantic value}
- \entry {semantic actions}{12}{semantic actions}
- \entry {actions, semantic}{12}{actions, semantic}
- \entry {Bison parser}{13}{Bison parser}
- \entry {Bison utility}{13}{Bison utility}
- \entry {lexical analyzer, purpose}{13}{lexical analyzer, purpose}
- \entry {parser}{13}{parser}
- \entry {stages in using Bison}{13}{stages in using Bison}
- \entry {grammar file}{14}{grammar file}
- \entry {layout of Bison grammar}{14}{layout of Bison grammar}
- \entry {simple examples}{17}{simple examples}
- \entry {examples, simple}{17}{examples, simple}
- \entry {reverse polish notation}{17}{reverse polish notation}
- \entry {polish notation calculator}{17}{polish notation calculator}
- \entry {{\fam \ttfam \tentt \rawbackslash rpcalc}\hbox {}}{17}{{\fam \ttfam \tentt \rawbackslash rpcalc}\hbox {}}
- \entry {calculator, simple}{17}{calculator, simple}
- \entry {writing a lexical analyzer}{21}{writing a lexical analyzer}
- \entry {lexical analyzer, writing}{21}{lexical analyzer, writing}
- \entry {controlling function}{22}{controlling function}
- \entry {main function in simple example}{22}{main function in simple example}
- \entry {error reporting routine}{23}{error reporting routine}
- \entry {yyerror}{23}{yyerror}
- \entry {running Bison (introduction)}{23}{running Bison (introduction)}
- \entry {compiling the parser}{24}{compiling the parser}
- \entry {infix notation calculator}{24}{infix notation calculator}
- \entry {{\fam \ttfam \tentt \rawbackslash calc}\hbox {}}{24}{{\fam \ttfam \tentt \rawbackslash calc}\hbox {}}
- \entry {calculator, infix notation}{24}{calculator, infix notation}
- \entry {error recovery, simple}{26}{error recovery, simple}
- \entry {multi-function calculator}{27}{multi-function calculator}
- \entry {{\fam \ttfam \tentt \rawbackslash mfcalc}\hbox {}}{27}{{\fam \ttfam \tentt \rawbackslash mfcalc}\hbox {}}
- \entry {calculator, multi-function}{27}{calculator, multi-function}
- \entry {symbol table example}{29}{symbol table example}
- \entry {exercises}{33}{exercises}
- \entry {C declarations section}{35}{C declarations section}
- \entry {declarations, C}{35}{declarations, C}
- \entry {Bison declarations section (introduction)}{35}{Bison declarations section (introduction)}
- \entry {declarations section, Bison (introduction)}{35}{declarations section, Bison (introduction)}
- \entry {grammar rules section}{36}{grammar rules section}
- \entry {rules section for grammar}{36}{rules section for grammar}
- \entry {additional C code section}{36}{additional C code section}
- \entry {C code, section for additional}{36}{C code, section for additional}
- \entry {nonterminal symbol}{36}{nonterminal symbol}
- \entry {terminal symbol}{36}{terminal symbol}
- \entry {token type}{36}{token type}
- \entry {symbol}{36}{symbol}
- \entry {character token}{37}{character token}
- \entry {literal token}{37}{literal token}
- \entry {single-character literal}{37}{single-character literal}
- \entry {rule syntax}{38}{rule syntax}
- \entry {grammar rule syntax}{38}{grammar rule syntax}
- \entry {syntax of grammar rules}{38}{syntax of grammar rules}
- \entry {{\fam \ttfam \tentt \char '174}}{38}{{\fam \ttfam \tentt \char '174}}
- \entry {recursive rule}{39}{recursive rule}
- \entry {left recursion}{39}{left recursion}
- \entry {right recursion}{39}{right recursion}
- \entry {mutual recursion}{40}{mutual recursion}
- \entry {language semantics}{40}{language semantics}
- \entry {semantics of the language}{40}{semantics of the language}
- \entry {semantic value type}{40}{semantic value type}
- \entry {value type, semantic}{40}{value type, semantic}
- \entry {data types of semantic values}{40}{data types of semantic values}
- \entry {action}{41}{action}
- \entry {$$}{41}{$$}
- \entry {${\sl n}}{41}{${\sl n}}
- \entry {action data types}{42}{action data types}
- \entry {data types in actions}{42}{data types in actions}
- \entry {actions in mid-rule}{43}{actions in mid-rule}
- \entry {mid-rule actions}{43}{mid-rule actions}
- \entry {declarations, Bison}{45}{declarations, Bison}
- \entry {Bison declarations}{45}{Bison declarations}
- \entry {declaring token type names}{46}{declaring token type names}
- \entry {token type names, declaring}{46}{token type names, declaring}
- \entry {%token}{46}{%token}
- \entry {declaring operator precedence}{47}{declaring operator precedence}
- \entry {operator precedence, declaring}{47}{operator precedence, declaring}
- \entry {declaring value types}{47}{declaring value types}
- \entry {value types, declaring}{47}{value types, declaring}
- \entry {%union}{47}{%union}
- \entry {declaring value types, nonterminals}{48}{declaring value types, nonterminals}
- \entry {value types, nonterminals, declaring}{48}{value types, nonterminals, declaring}
- \entry {%type}{48}{%type}
- \entry {preventing warnings about conflicts}{48}{preventing warnings about conflicts}
- \entry {warnings, preventing}{48}{warnings, preventing}
- \entry {conflicts, preventing warnings of}{48}{conflicts, preventing warnings of}
- \entry {%expect}{48}{%expect}
- \entry {declaring the start-symbol}{49}{declaring the start-symbol}
- \entry {start-symbol, declaring}{49}{start-symbol, declaring}
- \entry {%start}{49}{%start}
- \entry {reentrant parser}{49}{reentrant parser}
- \entry {pure parser}{49}{pure parser}
- \entry {%pure{\fam \ttfam \tentt \char '137}parser}{49}{%pure{\fam \ttfam \tentt \char '137}parser}
- \entry {Bison declaration summary}{50}{Bison declaration summary}
- \entry {declaration summary}{50}{declaration summary}
- \entry {summary, Bison declaration}{50}{summary, Bison declaration}
- \entry {C-language interface}{51}{C-language interface}
- \entry {interface}{51}{interface}
- \entry {yyparse}{51}{yyparse}
- \entry {YYACCEPT}{51}{YYACCEPT}
- \entry {YYABORT}{51}{YYABORT}
- \entry {yylex}{51}{yylex}
- \entry {lexical analyzer}{51}{lexical analyzer}
- \entry {yylval}{52}{yylval}
- \entry {yylloc}{53}{yylloc}
- \entry {error reporting function}{54}{error reporting function}
- \entry {yyerror}{54}{yyerror}
- \entry {yynerr}{54}{yynerr}
- \entry {summary, action features}{54}{summary, action features}
- \entry {action features summary}{54}{action features summary}
- \entry {{\sf \char '100}{\sl n}}{55}{{\sf \char '100}{\sl n}}
- \entry {algorithm of parser}{57}{algorithm of parser}
- \entry {shifting}{57}{shifting}
- \entry {reduction}{57}{reduction}
- \entry {parser stack}{57}{parser stack}
- \entry {stack, parser}{57}{stack, parser}
- \entry {look-ahead token}{58}{look-ahead token}
- \entry {yychar}{58}{yychar}
- \entry {conflicts}{59}{conflicts}
- \entry {shift/reduce conflicts}{59}{shift/reduce conflicts}
- \entry {dangling {\fam \ttfam \tentt \rawbackslash else}\hbox {}}{59}{dangling {\fam \ttfam \tentt \rawbackslash else}\hbox {}}
- \entry {{\fam \ttfam \tentt \rawbackslash else}\hbox {}, dangling}{59}{{\fam \ttfam \tentt \rawbackslash else}\hbox {}, dangling}
- \entry {operator precedence}{60}{operator precedence}
- \entry {precedence of operators}{60}{precedence of operators}
- \entry {associativity}{60}{associativity}
- \entry {%left}{61}{%left}
- \entry {%right}{61}{%right}
- \entry {%nonassoc}{61}{%nonassoc}
- \entry {context-dependent precedence}{62}{context-dependent precedence}
- \entry {unary operator precedence}{62}{unary operator precedence}
- \entry {%prec}{62}{%prec}
- \entry {finite-state machine}{63}{finite-state machine}
- \entry {parser state}{63}{parser state}
- \entry {state (of parser)}{63}{state (of parser)}
- \entry {reduce/reduce conflict}{63}{reduce/reduce conflict}
- \entry {error recovery}{67}{error recovery}
- \entry {recovery from errors}{67}{recovery from errors}
- \entry {error}{67}{error}
- \entry {yyerrok}{68}{yyerrok}
- \entry {yyclearin}{68}{yyclearin}
- \entry {YYDEBUG}{69}{YYDEBUG}
- \entry {yydebug}{69}{yydebug}
- \entry {debugging}{69}{debugging}
- \entry {tracing the parser}{69}{tracing the parser}
- \entry {invoking Bison}{71}{invoking Bison}
- \entry {Bison invocation}{71}{Bison invocation}
- \entry {options for Bison invocation}{71}{options for Bison invocation}
- \entry {Bison symbols, table of}{73}{Bison symbols, table of}
- \entry {symbols in Bison, table of}{73}{symbols in Bison, table of}
- \entry {glossary}{75}{glossary}
-